New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

jats-xml

Package Overview
Dependencies
Maintainers
0
Versions
34
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

jats-xml

Types and utilities for working with JATS in Typescript

  • 1.0.15
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
0
Created
Source

jats-xml

jats-xml on npm MIT License CI

Types and utilities for working with JATS XML documents in Node and Typescript.

What is JATS?

JATS is a NISO standard for Journal Article Tags Schema, which is a way to define the XML structure of a scientific article semantically. This includes the front-matter (authors, funding, title, abstract, etc.), the body of the article (sections, figures, equations, tables, etc.), and back-matter (references, footnotes, etc.). The JATS can also contain sub-articles.

The standard documents are hosted by the NIH https://jats.nlm.nih.gov/. There are three flavours, this library currently uses in most cases the most prescriptive tag set (for article authoring). Another helpful resource is https://jats4r.org/, which provides other examples and recommendations for JATS.

Note that most publishers do not provide the XML as a first class output - they should, it is an important part of open-science to have the content programmatically accessible and interoperable. It is only FAIR 😉.

Working in Typescript

All tags are accessible as types/enums. There is also documentation from each node-type

import { Tags } from 'jats-xml';

Tags.journalId;

Reading JATS in Node

import 'fs' from 'fs';
import { Inventory, toDate } from 'jats-xml';
import { toText } from 'myst-common';
import { select, selectAll } from 'unist-util-select';

const data = fs.readFileSync('article.jats').toString();
const jats = new JATS(data);
// Easy access to properties
jats.doi
jats.body // A tree of the body (or front/back)
toDate(jats.publicationDate) // as a Javascript Date object
select('[id=fig1]', jats.body) // select a figure by an ID
selectAll('fig', jats.body) // Or selectAll figures

Write JATS in Node

TODO!


As of v1.0.0 this package is ESM only.


Made with love by Continuous Science Foundation

Keywords

FAQs

Package last updated on 10 Dec 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc